using System;
using Tarkin.InfrastructureLibrary.Core.Basic;
using NUnit.Framework;

namespace Tarkin.InfrastructureLibrary.Tests.Core.Basic
{
    /// <summary>
    /// EnumerationLiteralTests is the NUnit TestFixture for the Tarkin.InfrastructureLibrary.Core.Basic.EnumerationLiteral class.
    /// </summary>
    [TestFixture]
    public class EnumerationLiteralTests
    {
        [Test]
        public void TestDefaultConstructor ()
        {
            EnumerationLiteral enumerationLiteral = new EnumerationLiteral ();

            Assert.IsNotNull ( enumerationLiteral );
        }

        [Test]
        public void TestOverloadedConstructorOneParameter ()
        {
            EnumerationLiteral enumerationLiteral = new EnumerationLiteral ( "EnumerationLiteral name" );

            Assert.IsNotNull ( enumerationLiteral );
            Assert.AreEqual ( "EnumerationLiteral name", enumerationLiteral.Name );
        }

        [Test]
        public void TestOverloadedConstructorTwoParameters ()
        {
            Enumeration enumeration = new Enumeration ();
            EnumerationLiteral enumerationLiteral = new EnumerationLiteral ( "EnumerationLiteral name", enumeration );

            Assert.IsNotNull ( enumerationLiteral );
            Assert.AreEqual ( "EnumerationLiteral name", enumerationLiteral.Name );
            Assert.AreEqual ( enumeration, enumerationLiteral.Enumeration );
        }
    }
}
